FailureAnalyzer是拦截启动时的异常并将它转换为可读消息的很好方式,Spring Boot为应用上下文相关异常, JSR-303校验等提供分析器,实际上创建你自己的分析器也相当简单。
AbstractFailureAnalyzer
是FailureAnalyzer
的一个方便扩展,根据指定类型的异常是否出现来进行处理。你可以继承它,这样就可以处理实际出现的异常。如果出于某些原因,不能处理该异常,那就返回null
让其他实现处理。
FailureAnalyzer
的实现需要注册到META-INF/spring.factories
,以下注册了ProjectConstraintViolationFailureAnalyzer
:
org.springframework.boot.diagnostics.FailureAnalyzer=\
com.example.ProjectConstraintViolationFailureAnalyzer